I dati

Analizzeremo un set di dati legato all’utilizzo di carte di credito e estrarremo dei segmenti di mercato.

Il dataset si riferisce a 8.950 clienti di un istituto bancario descritti da 18 variabili.

Dizionario delle variabili

ID Variabile Tipo Descrizione
1 CUST_ID stringa Identificativo del cliente
2 BALANCE numerico Saldo della carta di credito
3 BALANCE_FREQUENCY numerico Frequenza con cui il saldo viene aggiornato, punteggio compreso tra 0 e 1 (1 = aggiornato frequentemente, 0 = non aggiornato frequentemente)
4 PURCHASES numerico Importo degli acquisti effettuati dal conto
5 ONEOFF_PURCHASES numerico Importo massimo di un acquisto fatto in un’unica soluzione
6 INSTALLMENTS_PURCHASES numerico Importo degli acquisti effettuati a rate
7 CASH_ADVANCE numerico Anticipo in contanti
8 PURCHASES_FREQUENCY numerico Frequenza con cui vengono effettuati gli acquisti, punteggio compreso tra 0 e 1 (1 = acquistato frequentemente, 0 = non acquistato frequentemente)
9 ONEOFF_PURCHASES_FREQUENCY numerico Frequenza degli acquisti effettuati in un’unica soluzione
10 PURCHASES_INSTALLMENTS_FREQUENCY numerico Frequenza degli acquisti a rate
11 CASH_ADVANCE_FREQUENCY numerico Frequenza degli anticipi in contanti
12 CASH_ADVANCE_TRX numerico Transazioni di anticipo in contanti
13 PURCHASES_TRX numerico Transazioni di acquisto
14 CREDIT_LIMIT numerico Limite di credito
15 PAYMENTS numerico Pagamenti
16 MINIMUM_PAYMENTS numerico Importo minimo dei pagamenti effettuati dall’utente
17 PRC_FULL_PAYMENT numerico Percentuale del pagamento completo effettuato dall’utente
18 TENURE numerico Durata del servizio della carta di credito per l’utente

La tabella dei dati

Preparazione dei dati

Trattamento dati mancanti

In questo step elimineremo semplicemente i clienti che hanno dei dati mancanti. Infatti il K-means opera, generalmente con tabelle piene dei dati. Ci sono tecniche di imputazione dei dati mancanti ma non le utilizzeremo in questo studio.

key num.missing
MINIMUM_PAYMENTS 313
CREDIT_LIMIT 1

Un po’ di correlazioni

Riduzione dimensionale

Utilizzeremo una tecnica di riduzione dimensionale di tipo PCA (Analisi in componenti principali) per tener conto delle correlazioni tra le variabili e degli effetti sulla funzione costo del clustering.

A 2d density plot

K-means

Eseguiremo il K-means sulle prime 5 componenti che permettono di riassumere il 74,2% della variabilità complessiva dei dati.

Al fine di individuare il numero ottimale di K eseguiamo alcune procedure di validazione che ci permetteranno di avere un suggerimento circa il numero di segmenti da estrarre.

Sceglieremo di eseguire un K-means con K=4

Variabili di segmentazione importantanza globale

Indice di qualità totale

Possiamo calcolare la qualità della clustering utilizzando la formula \[R^2\%=\left(1-\frac{Cost}{SS_{Totale}}\right)\times 100\]

Che nel nostro caso è uguale a 48,9%.

Vediamo l’importanza globale di ogni variabile

Vediamo i cluster sulle prime due dimensioni:

Contributo di ogni variabile (Globale)

Vediamo ora il contributo/importanza di ogni variabile di segmentazione. Attenzione: avendo effettuato un’operazione di riduzione dimensionale che modifica la variabilità di ogni variable per darle uguale importanza (variabilità) nell’analisi, confrontiamo solo le singole variabili di segmentazione originarie.

Variabili di segmentazione importantanza in ogni segmento (Profilazione)

Andiamo ora a vedere l’importanza di ogni variabile di segmentazione in ogni segmento, valutando quanto ogni media nel segmento è diversa dalla media generale.

Più una media è significativamente diversa da quella generale, più essa caratterizza (descrive) il segmento

Medie di ogni segmento e media generale

Plot delle significatività delle differenze delle medie dei segmenti dalla media generale

Confronti a coppia

Possiamo anche confrontare per coppie di segmenti come si distributiscono le medie.

BALANCE

BALANCE_FREQUENCY

PURCHASES

ONEOFF_PURCHASES

INSTALLMENTS_PURCHASES

CASH_ADVANCE

PURCHASES_FREQUENCY

ONEOFF_PURCHASES_FREQUENCY

PURCHASES_INSTALLMENTS_FREQUENCY

CASH_ADVANCE_FREQUENCY

CASH_ADVANCE_TRX

PURCHASES_TRX

CREDIT_LIMIT

PAYMENTS

MINIMUM_PAYMENTS

PRC_FULL_PAYMENT